package cn.itcast;

import java.sql.*;

public class JDBCDemo01 {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //可以通过列的索引值获取数据，但是此处列的索引值是从1开始的。
       // rs.getInt(3);
        //遍历结果集，如果查询的结果只有一条记录的话，那么我们直接使用if（rs.next()）即可，不需使用while
        //不管是通过列名还是列的索引获取字段的值，都是根据select后的查询列作为查询的依据
        //导入jar包
        //注册驱动
        Class.forName("com.mysql.jdbc.Driver");
        //获取连接
        //（DriverManager功能类：驱动管理对象。作用：1.注册驱动 2.获取数据库连接 ）
        //Connection:数据库连接对象，作用：1.获取执行者对象 2.管理事务 3.释放资源
        Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/db10", "root", "root");
        //获取执行sql对象
        //Statement :执行sql语句的对象 1.执行DML语句 int executeUpdate(String sql); 2.执行DQL语句 ResultSet executeQuery(String sql);3.释放资源
        Statement stat = con.createStatement();
        //执行sql，，并接受返回的结果集
        String sql = "select * from account";
        //ResultSet :结果集对象
        //1.判断结果集中是否还有数据：boolean next();有数据返回true，并将索引向下移动一行 没有数据返回false
        //2.获取结果集中的数据：XXX getXxx("列名");
        //3.释放资源
        ResultSet rs = stat.executeQuery(sql);
        //处理结果集
        while(rs.next()){
            int id = rs.getInt("id");
            String name = rs.getString("name");
            System.out.println(id + "---" + name);
        }
        //释放资源
        rs.close();
        stat.close();
        con.close();


    }
}
